﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;

namespace ShivamEMR.Model.Domain.InventoryDomain
{
   public class Item
    {
        #region Properties
        public Guid ID { get; set; }
        public string Code { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public int Balance { get; set; }
        public string Notes { get; set; }
        public string Barcode { get; set; }       
        #endregion

        #region ForeignKeyProperties
        public int ItemTypeID { get; set; }
        public int ItemGroupID { get; set; }
        public Guid ManufacturerID { get; set; }
        [ForeignKey("Picture")]
        public Guid PictureID { get; set; }
        public int ItemStatusID { get; set; } 
        #endregion

        #region NavigationalProperties
       [ForeignKey("ItemTypeID")]
        public virtual ItemType ItemType { get; set; }
       [ForeignKey("ItemGroupID")]
        public virtual ItemGroup Group { get; set; }
       [ForeignKey("ManufacturerID")]
        public virtual Manufacturer Manufacturer { get; set; }      
        public virtual ItemPicture Picture { get; set; }
       [ForeignKey("ItemStatusID")]
        public virtual ItemStatus Status { get; set; }

       public virtual ICollection<Price> Prices { get; set; }
        #endregion


    }
}
